import greenfoot.*;  // (World, Actor, GreenfootImage, Greenfoot and MouseInfo)

/**
 * La clase Lava es un tipo de enemigo que te quita 10 segundos
 * 
 * @author (Alcantar Noyola Christian Andres) 
 * @author (Sanchez Ovalle Daniel) 
 * @version (29/04/13)
 */
public class Lava extends Enemigo
{
    private GreenfootImage imagelava[]=new GreenfootImage [3];
    private int noImagen;

    /**
     * Este es el constructor de la clase Lava, aqui se inicializa el noImagen a 0 y se
     * cargan las imagenes para la simulacion de la lava
     */
    public Lava()
    { 
        this.CargarImagen();
        noImagen=0; 
    }

    /**
     * este metodo manda llamar a otros metodos para checar al chango y cambiar la imagen de la lava
     */
    public void act()
    {
        noImagen=(noImagen+1)%30;
        this.CambiaImagen();
        this.checarchango();
    }

    /**
     * Este metodo se encarga de cargar las imagenes para hacer la simulacion de la lava
     */
    public void CargarImagen()
    {
        for(int i=0;i<3;i++)
            imagelava[i]=(new GreenfootImage("lava"+(i)+".png"));    
    }

    /**
     * Este metodo cambia la imagen de la lava dependiendo del noImagen
     */
    public void CambiaImagen()
    { 
        GreenfootImage imagen=this.getImage();
        if(noImagen>=2 && noImagen<16)
            super.setImage(imagelava[1]); 

        if(noImagen>=16 && noImagen<=29)
            super.setImage(imagelava[2]);    
    }   

    /**
     * Este metodo le quita 10 segundos al reloj si el chango se cayo en la lava, si el chango no contiene los 10 segundos
     * necesarios entonces se le quita una vida y si no contiene vidas se manda llamar al mensaje
     * gameOver. (Este es un metodo polimorfico)
     */
    public void modificaItemsDelChango()
    {
        Cronometro crono;
        Escenario1 mundo;        
        mundo=(Escenario1)this.getWorld();       
        crono=mundo.getCrono();

        crono.restSegs(10);
    }

}
